/*
 * anima/console.hh - Generic console interface.
 * Copyright (C) 2007  Mikhail Vorozhtsov
 * See the LICENSE section of the README file for details.
 */

/* $Id$ */

#ifndef HEADER_ANIMA_CONSOLE_HH
#define HEADER_ANIMA_CONSOLE_HH

#include ANIMA_PLATFORM_HEADER (console.hh)

START_NAMESPACE (anima)

class console : public ANIMA_PLATFORM::console
{
private:
  static void putc (char c);
  static void puts (const char *str);
  static void puts (const char *str, u64_t length);

public:
  static void init ();

public:
  static void vprint (const char *fmt, va_list args);
  static void print (const char *fmt, ...);

public:
  static void warning (const char *fmt, ...);
  static void error (const char *fmt, ...);
  static void fatal (const char *fmt, ...);
};

END_NAMESPACE

#endif /* HEADER_ANIMA_CONSOLE_HH */

